package com.github.prontera.domain;

import java.math.BigDecimal;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.github.prontera.domain.enums.IssueTypeEnum;
import com.github.prontera.domain.enums.YesOrNoEnum;
import com.github.prontera.model.BasicDomain;

import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.ToString;

/**
 * 
 * i_issue-问答
 *
 */
@ToString
@EqualsAndHashCode(callSuper = true)
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler", "fieldHandler"}, ignoreUnknown = true)
public class Issue extends BasicDomain{

	private static final long serialVersionUID = 1L;
    
	/**
	 * 
	 */
	@ApiModelProperty(value = "")
    private Long clientId;
	/**
	 * 问题
	 */
	@ApiModelProperty(value = "问题")
    private String issue;
	/**
	 * 问题
	 */
	@ApiModelProperty(value = "问题")
	private String vid;
	/**
	 * 
	 */
	@ApiModelProperty(value = "type")
	private Integer type;
	/**
	 * 红包价格
	 */
	@ApiModelProperty(value = "红包价格")
	private BigDecimal amount;
	/**
	 * 总收入
	 */
	@ApiModelProperty(value = "总收入")
	private BigDecimal totalAmount;
	/**
	 * 0:公开,1:隐私
	 */
	@ApiModelProperty(value = "0:公开,1:隐私")
	private IssueTypeEnum issueType;
	
	/**
	 * 是否支付成功: 0:是  1:不是
	 */
	@ApiModelProperty(value = "是否支付成功:0:是  1:不是")
	@JsonIgnoreProperties
	private YesOrNoEnum hasPaySuccess;
	
	private Client client;
	
	private IssueAnswer issueAnswer;
	/**
	 * 接受方ID
	 */
	@ApiModelProperty(value = "接受方ID")
    private Long acceptorId;
	/**
	 * 城市编码
	 */
	@ApiModelProperty(value = "城市编码")
    private String cityCode;
	/**
	 * 定位城市
	 */
	@ApiModelProperty(value = "定位城市")
    private String city;
	
    public Issue(){
    
    }
    
	public String getCityCode() {
		return cityCode;
	}

	public void setCityCode(String cityCode) {
		this.cityCode = cityCode;
	}

	public String getCity() {
		return city;
	}

	public void setCity(String city) {
		this.city = city;
	}

	public Long getAcceptorId() {
		return acceptorId;
	}

	public void setAcceptorId(Long acceptorId) {
		this.acceptorId = acceptorId;
	}

	public YesOrNoEnum getHasPaySuccess() {
		return hasPaySuccess;
	}

	public void setHasPaySuccess(YesOrNoEnum hasPaySuccess) {
		this.hasPaySuccess = hasPaySuccess;
	}

	public IssueTypeEnum getIssueType() {
		return issueType;
	}

	public void setIssueType(IssueTypeEnum issueType) {
		this.issueType = issueType;
	}

	public BigDecimal getAmount() {
		return amount;
	}

	public void setAmount(BigDecimal amount) {
		this.amount = amount;
	}

	public IssueAnswer getIssueAnswer() {
		return issueAnswer;
	}

	public void setIssueAnswer(IssueAnswer issueAnswer) {
		this.issueAnswer = issueAnswer;
	}

	public Client getClient() {
		return client;
	}

	public void setClient(Client client) {
		this.client = client;
	}

	public BigDecimal getTotalAmount() {
		return totalAmount;
	}

	public void setTotalAmount(BigDecimal totalAmount) {
		this.totalAmount = totalAmount;
	}

	public String getVid() {
		return vid;
	}

	public void setVid(String vid) {
		this.vid = vid;
	}

	public Integer getType() {
		return type;
	}

	public void setType(Integer type) {
		this.type = type;
	}

	public Long getClientId() {
        return this.clientId;
    }
    
    public void setClientId(Long clientId) {
        this.clientId = clientId;
    }
    public String getIssue() {
        return this.issue;
    }
    
    public void setIssue(String issue) {
        this.issue = issue;
    }
    
}
